package com.one.common.manager.imageupload;

import com.qiniu.android.storage.UpCancellationSignal;
import com.qiniu.android.storage.UploadOptions;

import java.io.File;
import java.util.List;

/**
 * Author：zhulunjun
 * Time：2017/9/25
 * description：上传管理的接口
 */

public interface IUploader {

    /**
     * 初始化配置
     */
    void initUploader();

    /**
     * 上传单个文件
     */
    void uploadSingle(File file, String type, UploadOptions option, ProgressListener progressHandler);

    /**
     * 上传单个文件
     * 带参数type
     */
    void uploadSingle(File file, String type);

    /**
     * 上传单个文件
     * 带参数type
     * 和带上传进度监听
     */
    void uploadSingle(File file, String type, ProgressListener progressHandler, UpCancellationSignal cancellationSignal);


    void uploadSingleModifyPhone(String fromLoginModifyPhone, File file, final String type, final ProgressListener progressHandler, UpCancellationSignal cancellationSignal);
        /**
         * 上传多个文件
         */
    void uploadMultiple(List<File> files, String type, final ProgressListener progressHandler);
    void uploadMultiple(List<File> files, String type);
    void uploadMultiple(List<File> files);
}
